#pragma once
#include "listeners.h"

class CPassenger
{
public:
	CPassenger(size_t currentFloor, size_t targetFloor);
	~CPassenger(void);
	
	size_t GetTarget() const { return m_target; };
	bool NeedUp() const { return m_goingUp; };

	void NewFloor(size_t floorNum);
	void RegisterListener(IPassengerListener* listener);
private:
	size_t m_target;
	bool m_goingUp;

	IPassengerListener* m_passengerArrivedListener;
};
